load("@rules_cc//cc:defs.bzl", "cc_library")

package(default_visibility = ["//visibility:public"])

cc_library(
    name = "boost.bind",
    hdrs = glob(
        [
            "include/**/*.hpp",
        ],
        exclude = [
            "include/boost/bind/bind_cc.hpp",
            "include/boost/bind/bind_mf_cc.hpp",
            "include/boost/bind/bind_mf2_cc.hpp",
            "include/boost/bind/bind_template.hpp",
            "include/boost/bind/mem_fn_cc.hpp",
            "include/boost/bind/mem_fn_template.hpp",
            "include/boost/bind/mem_fn_vw.hpp",
        ],
    ),
    features = [
        "parse_headers",
    ],
    includes = ["include"],
    textual_hdrs = glob(
        [
            "include/boost/bind/bind_cc.hpp",
            "include/boost/bind/bind_mf_cc.hpp",
            "include/boost/bind/bind_mf2_cc.hpp",
            "include/boost/bind/bind_template.hpp",
            "include/boost/bind/mem_fn_cc.hpp",
            "include/boost/bind/mem_fn_template.hpp",
            "include/boost/bind/mem_fn_vw.hpp",
        ],
    ),
    deps = [
        "@boost.config",
        "@boost.core",
    ],
)
